/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package TUILayer;

/**
 *
 * @author Martin
 */
import ModelLayer.*;
import ControlLayer.*;
import java.util.Scanner;

public class MedarbejdereUI {
    
private Scanner reader;
private AdressebogCtrl adressebogCtrl;
    
    public MedarbejdereUI(){
    reader = new Scanner(System.in);
    adressebogCtrl = new AdressebogCtrl();
    }
    
    /**
     * Calls a method in order to generate menu
     */
    public void start()
    {
        medarbejderMenu();
    }
    
    /**
     * Calls the address menu
     */
    public void medarbejderMenu()
    {
       boolean exit = false;
       while(!exit)//that is: while exit is false
       {
          int choise = udskrivMedarbejderMenu(); 
          switch (choise)
          {   
              case 1: createPerson();
                      break;
              case 2: createLeader();
                      break;
              case 3: getPerson();
                      break;
              case 4: updatePerson();
                      break;
              case 5: deletePerson();
                      break;
              case 6: listAllPersons();
                      break;
              case 7: listAllLeaders();
                      break;
              default: exit = true;
                      break;
          }
       }
    }
    
    /**
     * Generates the address menu
     */
    public int udskrivMedarbejderMenu()
    {      // makes an object keyboard to read input from the screen
          
            System.out.println(" *** Medarbejder Menu ***");
            System.out.println(" (1) Opret Medarbejder");
            System.out.println(" (2) Opret Leder");
            System.out.println(" (3) Find Medarbejder");
            System.out.println(" (4) Opdater Medarbejderinfo");
            System.out.println(" (5) Slet Medarbejder");
            System.out.println(" (6) Udskriv Medarbejdere");
            System.out.println(" (7) Udskriv Ledere");
            System.out.println(" (8) Hovedmenuen");
            System.out.print("\n Make your choice: ");
            
            int choise = reader.nextInt();
            //System.out.println("\f");
            return choise;
    }
/**
     * /**
     * skaber et person objekt med Rollen medarbejder ved at sende oplysninger videre til adressebogCtrl
     */
    public void createPerson()
    {
        System.out.println("Navn : ");
        String navn = reader.nextLine();
        navn = reader.nextLine();
        reader.reset();
        System.out.println("Adresse : ");
        String adresse = reader.nextLine();
        //adresse = reader.nextLine();
        System.out.println("Tlf : ");
        int tlf = reader.nextInt();
        System.out.println("Email : ");
        String email = reader.next();
        adressebogCtrl.opretMedarbejder(navn, adresse, tlf, email);
        
    }
    /**
     * skaber et person objekt med Rollen leder ved at sende oplysninger videre til adressebogCtrl
     */
    public void createLeader()
    {
        System.out.println("Navn : ");
        String navn = reader.nextLine();
        navn = reader.nextLine();   
        reader.reset();
        System.out.println("Adresse : ");
        String adresse = reader.nextLine();
        //adresse = reader.nextLine();
        System.out.println("Tlf : ");
        int tlf = reader.nextInt();
        System.out.println("Email : ");
        String email = reader.next();
        adressebogCtrl.opretLeder(navn, adresse, tlf, email);
        
    }
    /**
     * henter et objekt af typen person ud fra tlf nummer
     */
    
    public void getPerson()
    {
        System.out.println("Tlf : ");
        int tlf = reader.nextInt();
        adressebogCtrl.findPerson(tlf);
        
    }
    /**
     * opdaterer et person objekt ved at sende oplysninger videre til adressebogCtrl
     */
    public void updatePerson()
    {
       System.out.println("søg Tlf : ");
        int tlf = reader.nextInt();
        System.out.println("Navn : ");
        String navn = reader.nextLine();
        navn = reader.nextLine();
        reader.reset();
        System.out.println("Adresse : ");
        String adresse = reader.nextLine();
        //adresse = reader.nextLine();
        System.out.println("Tlf : ");
        int newTlf = reader.nextInt();
        System.out.println("Email : ");
        String email = reader.next();
        adressebogCtrl.opdaterPerson(tlf, navn, adresse, newTlf, email);
        
    }
    /**
     * sletter et person objekt gennem adressebogCtrl via tlf nummer
     */
    public void deletePerson()
    {
        System.out.println("Tlf : ");
        int tlf = reader.nextInt();
        adressebogCtrl.sletPerson(tlf);
       
    }
    /**
     * udskriver alle medarbejdere i Person ArrayListen
     */
    public void listAllPersons()
    {
        adressebogCtrl.udskrivMedarbejdere();
        
    }
   /**
     * udskriver alle ledere i Person ArrayListen
     */
    public void listAllLeaders()
    {
        adressebogCtrl.udskrivLedere();
        
    }
    //-----------------------------------------------------------
}